using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Text;
using System.Windows.Forms;
using System.Windows.Forms.Design;
using Microsoft.Xna.Framework;

namespace Ferpect.GameComponents.Design
{
    /// <summary>
    /// This class is a designer for the ViewControl class.
    /// </summary>
    /// <typeparam name="T"></typeparam>
    class ViewControlDesigner<TComponent> : ControlDesigner
        where TComponent : IComponent, IDrawable, IGameComponent, new()
    {
        private ViewControl<TComponent> viewControl;

        public ViewControlDesigner()
        {
        }

        public override void Initialize(System.ComponentModel.IComponent component)
        {
            this.viewControl = (ViewControl<TComponent>)component;
            //IComponent hidden = this.viewControl.Component;
            //IContainer container = component.Site.GetService(typeof(INestedContainer)) as IContainer;
            //container.Add(hidden);

            base.Initialize(component);
        }

        protected override void PostFilterProperties(System.Collections.IDictionary properties)
        {
            //base.PostFilterProperties(properties);
        }

        protected override void PreFilterProperties(System.Collections.IDictionary properties)
        {
            //base.PreFilterProperties(properties);
        }
    }
}
